Package edu.ubb.warp.ui

Source Code of edu.ubb.warp.ui.ProjectPageUI

package edu.ubb.warp.ui;

import java.util.ArrayList;

import com.vaadin.event.ItemClickEvent;
import com.vaadin.event.ItemClickEvent.ItemClickListener;
import com.vaadin.ui.*;
import com.vaadin.ui.Button.ClickEvent;
import com.vaadin.ui.Button.ClickListener;

import edu.ubb.warp.dao.BookingDAO;
import edu.ubb.warp.dao.DAOFactory;
import edu.ubb.warp.dao.ProjectDAO;
import edu.ubb.warp.dao.ResourceDAO;
import edu.ubb.warp.exception.DAOException;
import edu.ubb.warp.exception.ProjectNotBookedException;
import edu.ubb.warp.model.Booking;
import edu.ubb.warp.model.Project;
import edu.ubb.warp.model.Resource;
import edu.ubb.warp.model.User;
/**
* @deprecated
*
*
*/
public class ProjectPageUI extends VerticalLayout {
 
  protected ProjectPageUI me = this;
  protected User user;
  private static final long serialVersionUID = 1L;


  private Panel projectPanel = new Panel();
  private Label projectName;
  private Label projectLeader = new Label ();
  private Table projectTable = new Table();
  private Button closeProject = new Button("Close this project!");
  private Button optionProject = new Button("Options");
  private DAOFactory df = DAOFactory.getInstance();
  private Button request = new Button("Add new request!")
 
  public ProjectPageUI(final User u, final Project p) {
    user = u;
 
    this.addComponent(projectPanel);
   
    if (p.isOpenedStatus())
    {
      projectName = new Label("<b>"+p.getProjectName()+"</b> - open",Label.CONTENT_XHTML);
    }else
    {
      projectName = new Label("<b>"+p.getProjectName()+"</b> - close",Label.CONTENT_XHTML)
    }
    ArrayList<Resource> leaderArray = null;
    ResourceDAO resDao = df.getResourceDAO();
   
   
   
    try {
      leaderArray = resDao.getLeadersByProject(p);
      projectLeader.setValue(leaderArray.get(0).getResourceName());
      for (int i = 1; i < leaderArray.size(); i++)
      {
        String s = projectLeader.getValue().toString();
        projectLeader.setValue(s +", " + leaderArray.get(i).getResourceName());
      }
    } catch (DAOException e) {
      e.printStackTrace();
    }
   
   
    Panel panelName = new Panel();
    HorizontalLayout panelButton = new HorizontalLayout();
   
    panelName.addComponent(projectName);
    panelName.addComponent(projectLeader);
    panelName.addComponent(projectTable);
   
    panelButton.addComponent(closeProject);
    panelButton.addComponent(optionProject);
    panelButton.addComponent(request);
   
    HorizontalLayout layout = new HorizontalLayout();
    layout.addComponent(panelName);
    layout.addComponent(panelButton);
    layout.setSizeFull();
    layout.setSpacing(true);
   
   
    projectPanel.setSizeFull();
    projectPanel.addComponent(panelButton);
    projectPanel.addComponent(panelName);

    projectTable.setHeight("200");
    closeProject.addListener(new ClickListener() {
      /**
       *
       */
      private static final long serialVersionUID = -1360875811056001870L;

      public void buttonClick(ClickEvent event) {
        me.getApplication().getMainWindow().setContent(new CloseProjectPageUI(u, p));
      }
    });
    optionProject.addListener(new ClickListener() {
      /**
       *
       */
      private static final long serialVersionUID = -4581378782471898678L;

      public void buttonClick(ClickEvent event) {
        me.getApplication().getMainWindow().setContent(new ProjectOptionsPageUI(u, p));
      }
    });
   
    request.addListener(new ClickListener() {
      /**
       *
       */
      private static final long serialVersionUID = 8725189226720674211L;

      public void buttonClick(ClickEvent event) {
        me.getApplication().getMainWindow().setContent(new MakeRequestPageUI(u,p));
      }
    });
 
    try {
      BookingDAO bookDAO = df.getBookingDAO();
      ResourceDAO resourceDAO = df.getResourceDAO();
      ArrayList<Resource> resourceList;
     
      resourceList = resourceDAO.getResourcesByProject(p);
   
      int min,max = 0;
      Booking bMinMax = bookDAO.getMinBookingByProject(p);
      min = bMinMax.getWeek();
      bMinMax = bookDAO.getMaxBookingByProject(p);
      max = bMinMax.getWeek();
      {
        projectTable.addContainerProperty("Resource", String.class, null);
        for(int i = min; i <= max; i++) {
          String s = "Week " + Integer.toString(i);
          projectTable.addContainerProperty(s, String.class, null);
        }
       
 
       
        for(int j = 0; j < resourceList.size(); j++) {
          String[] obj = new String[max - min + 2];
          obj[0] = resourceList.get(j).getResourceName();
          int i = 1;
          for(int it = min; it <= max; it++) {
            Booking b = bookDAO.getBookingByResourceIDAndProjectIDAndWeek(resourceList.get(j).getResourceID(),p.getProjectID(), i);
            obj[i] = Float.toString(b.getRatio());
            i++;
          }
          projectTable.addItem(obj,j);
        }
      }
    } catch (DAOException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
     
    } catch (ProjectNotBookedException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
      //me.getApplication().getMainWindow().showNotification("A projektben nem talalhatok eroforrasok!");
     
    }
   
 
  }

}
TOP

Related Classes of edu.ubb.warp.ui.ProjectPageUI

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.